#ifndef MYSUBTITLE_H
#define MYSUBTITLE_H

#include <QObject>
#include <QPointer>
#include <QFile>

// 字幕类
class MYSubtitle : public QObject
{
    Q_OBJECT
public:
    MYSubtitle();
    virtual ~MYSubtitle();

    // 打开
    void Open(QString path);
    // 读取字幕元素
    bool Read(int currentTime);

    // 是否打开
    bool isOpen();
    // 开始时间
    int nodeStartTime();
    // 结束时间
    int nodeEndTime();
    // 字幕内容
    QString text();

    enum SUBTITLE_TYPE {
        SUBTITLE_TYPE_UNKNOW = 0,
        SUBTITLE_TYPE_SRT,
        SUBTITLE_TYPE_SSA  // SSA/ASS
    };
    Q_ENUM(SUBTITLE_TYPE)   // Qt的枚举类型需继承自QObject且用Q_ENUM声明

private:
    SUBTITLE_TYPE m_SubtitleType {SUBTITLE_TYPE_UNKNOW};
    QScopedPointer<QFile> m_SubtitleFile;
    int m_NodeStartTime {0};
    int m_NodeEndTime {0};
    QString m_Text{" "};
    bool m_isOpen{false};
};

#endif // MYSUBTITLE_H
